跳到主要内容

C++ 左值和右值

C++ 的表达式可以是左值或右值,左值可以位于左侧而右值不能。

  • 赋值运算符需要一个非常量左值作为左侧运算对象;
  • 取地址符作用于左值运算对象;
  • 解引用和下标的求值结果是左值;
  • 内置类型和迭代器的递增递减运算符作用于左值。

如果表达式的求值结果是左值,那么 decltype 得到引用类型。